StupidBeauty
Read times:546Posted at:Wed Nov 16 01:43:32 2011

错误:void 值未如预期地被忽略

今天下午在专门处理某個程序中的内存泄漏问题。用valgrind查到一处泄漏的地方之后,按照以前用delete的习惯直接写上咯“free (*cnet)->sockfds[SockCtr]”,嘿嘿。结果一编译,报告“错误:void值未如预期地被忽略”,本座一呆,这是怎么回事啊?出去一查古鸽,看到咯这位哥哥的博客:http://blog.csdn.net/huichengongzi/article/details/5449470,其中这句:“void free( void *memblock ); —— 没有返回值,不好比较”,这才猛回头,想起来咯,原来free是C语言里的函数,不像delete是个操作符,它的参数必须是放在括号里的。前面习惯性写的那句实际上变成咯:“free() -> something”这样一个表达式,由于free()返回的是一个void,所以GCC就对这个表达式报告咯错误咯。把后面那一大坨“(*cnet)->sockfds[SockCtr]”加个括号就行咯。用惯咯C++咯。

错误:void 值未如预期地被忽略

今天下午在专门处理某個程序中的内存泄漏问题。用valgrind查到一处泄漏的地方之后,按照以前用delete的习惯直接写上咯“free (*cnet)->sockfds[SockCtr]”,嘿嘿。结果一编译,报告“错误:void值未如预期地被忽略”,本座一呆,这是怎么回事啊?出去一查古鸽,看到咯这位哥哥的博客:http://blog.csdn.net/huichengongzi/article/details/5449470,其中这句:“void free( void *memblock ); —— 没有返回值,不好比较”,这才猛回头,想起来咯,原来free是C语言里的函数,不像delete是个操作符,它的参数必须是放在括号里的。前面习惯性写的那句实际上变成咯:“free() -> something”这样一个表达式,由于free()返回的是一个void,所以GCC就对这个表达式报告咯错误咯。把后面那一大坨“(*cnet)->sockfds[SockCtr]”加个括号就行咯。用惯咯C++咯。

Your opinions
Your name:Email:Website url:Opinion content:
- no title specified

HxLauncher: Launch Android applications by voice commands

 
Recent comments
2017年4月~2019年4月垃圾短信排行榜Posted at:Thu Sep 26 04:51:48 2024
Qt5.7文档翻译:QWebEngineCookieStore类,QWebEngineCookieStore ClassPosted at:Fri Aug 11 06:50:35 2023盲盒kill -9 18289 Grebe.20230517.211749.552.mp4